//package nancal.mp.mvc.sys
//
//import io.swagger.annotations.*
//import nancal.mp.db.mongo.*
//import nancal.mp.db.mongo.entity.*
//import nancal.mp.db.mongo.entity.sys.*
//import nbcp.base.annotation.*
//import nbcp.base.annotation.mvc.*
//import nbcp.base.comm.*
//import nbcp.base.extend.*
//import nbcp.mvc.sys.*
//import nbcp.myoql.db.*
//import nbcp.myoql.db.mongo.*
//import nbcp.web.*
//
//import org.springframework.data.mongodb.core.query.*
//import org.springframework.web.bind.annotation.*
//import java.time.*
//import javax.servlet.http.*
//
///**
// * Created by CodeGenerator at 2024-12-17 02:42:21
// */
//@Api(description = "K8s使用脚本同步配置", tags = arrayOf("K8sApiSyncSetting"))
//@RestController
//@RequestMapping("/sys/k8s-api-sync-setting")
//class K8sApiSyncSettingAutoController {
//
//    @ApiOperation("列表")
//    @PostMapping("/list")
//    fun list(
//        id: String, //当列表列新一条后，刷新时使用
//        @Require skip: Int,
//        @Require take: Int,
//        request: HttpServletRequest
//    ): ListResult<K8sApiSyncSetting> {
//
//        mor.sys.k8sApiSyncSetting.query()
//            .apply {
//                if (id.HasValue) {
//                    this.where { it.id mongoEquals id }
//                }
//            }
//            .limit(skip, take)
//            .toListResult()
//            .apply {
//                return this;
//            }
//    }
//
//    @ApiOperation("详情")
//    @PostMapping("/detail/{id}")
//    fun detail(
//        @Require id: String,
//        request: HttpServletRequest
//    ): ApiResult<K8sApiSyncSetting> {
//        mor.sys.k8sApiSyncSetting.queryById(id)
//            .toEntity()
//            .apply {
//                if (this == null) {
//                    return ApiResult.error("找不到数据")
//                }
//
//                return ApiResult.of(this)
//            }
//    }
//
//    @ApiOperation("更新")
//    @PostMapping("/save")
//    fun save(
//        @RequestBody entity: K8sApiSyncSetting,
//        request: HttpServletRequest
//    ): ApiResult<String> {
//        //鉴权
//        var userId = request.UserId;
//
//        mor.sys.k8sApiSyncSetting.updateWithEntity(entity)
//            .withColumns(request.requestParameterKeys)
//            .run {
//                if (entity.id.HasValue) {
//                    return@run this.execUpdate()
//                } else {
//
//                    //如果是第一外，则设置为激活。
//                    if (mor.sys.k8sApiSyncSetting.query()
//                            .where { it.isActive mongoEquals true }
//                            .count() == 0
//                    ) {
//                        entity.isActive = true
//                    }
//
//
//                    return@run this.execInsert()
//                }
//            }
//            .apply {
//                if (this == 0) {
//                    return ApiResult.error("更新失败")
//                }
//
//                return ApiResult.of(entity.id)
//            }
//    }
//
//    @ApiOperation("删除")
//    @PostMapping("/delete/{id}")
//    fun delete(
//        @Require id: String,
//        request: HttpServletRequest
//    ): JsonResult {
//        //鉴权
//        var userId = request.UserId
//
//        var entity = mor.sys.k8sApiSyncSetting.queryById(id).toEntity()
//        if (entity == null) {
//            return JsonResult.error("找不到数据")
//        }
//
//        mor.sys.k8sApiSyncSetting.deleteById(id)
//            .exec()
//            .apply {
//                if (this == 0) {
//                    return JsonResult.error("删除失败")
//                }
//                //实体上配置垃圾箱功能，可物理删除，会自动移到垃圾箱。
//                return JsonResult()
//            }
//    }
//
//
//    @PostMapping("/set-active")
//    fun setActive(@Require id: String): JsonResult {
//        mor.sys.k8sApiSyncSetting.updateById(id)
//            .set { it.isActive to true }
//            .exec()
//
//        if (mor.affectRowCount == 0) {
//            return JsonResult.error("更新失败")
//        }
//
//        mor.sys.k8sApiSyncSetting.update()
//            .where { it.isActive mongoEquals true }
//            .where { it.id mongoNotEquals id }
//            .set { it.isActive to false }
//            .exec()
//
//        if (mor.affectRowCount == 0) {
//            return JsonResult.error("更新失败")
//        }
//
//        return JsonResult()
//    }
//}